package mx.gob.imss.reiman.clientes.model;

import java.io.Serializable;

/**
 * 
 * @author Alberto Dzul Calvillo
 * @version 1.0
 * 
 */
public class EventoDonacion implements Serializable {
	private static final long serialVersionUID = 1L;
	private String fechaAtencion;
	private String cveIdee;
	private String numeroFolioUnidad;
	private String stpDonacion;
	private String cveMotivoRechazo;
	private String complementoRechazo;
	private String cveMatricula;
	private String apellidoPaterno;
	private String apellidoMaterno;
	private String nombre;
	private String cvePresupuestal;
	private String cveTipoMensaje;
	private String cveTipoServicio;
	private String cveRFC;
	private String numeroAplicacion;
	private String numeroContrato;

	public EventoDonacion() {
		super();
		this.fechaAtencion = "";
		this.cveIdee = "";
		this.numeroFolioUnidad = "";
		this.stpDonacion = "";
		this.cveMotivoRechazo = "";
		this.complementoRechazo = "";
		this.cveMatricula = "";
		this.apellidoPaterno = "";
		this.apellidoMaterno = "";
		this.nombre = "";
		this.cvePresupuestal = "";
		this.cveTipoMensaje = "";
		this.cveTipoServicio = "";
		this.cveRFC = "";
		this.numeroAplicacion = "";
		this.numeroContrato = "";
	}

	public EventoDonacion(String fechaAtencion, String cveIdee,
			String numeroFolioUnidad, String stpDonacion,
			String cveMotivoRechazo, String complementoRechazo,
			String cveMatricula, String apellidoPaterno,
			String apellidoMaterno, String nombre, String cvePresupuestal,
			String cveTipoMensaje, String cveTipoServicio, String cveRFC,
			String numeroAplicacion, String numeroContrato) {
		super();
		this.fechaAtencion = fechaAtencion;
		this.cveIdee = cveIdee;
		this.numeroFolioUnidad = numeroFolioUnidad;
		this.stpDonacion = stpDonacion;
		this.cveMotivoRechazo = cveMotivoRechazo;
		this.complementoRechazo = complementoRechazo;
		this.cveMatricula = cveMatricula;
		this.apellidoPaterno = apellidoPaterno;
		this.apellidoMaterno = apellidoMaterno;
		this.nombre = nombre;
		this.cvePresupuestal = cvePresupuestal;
		this.cveTipoMensaje = cveTipoMensaje;
		this.cveTipoServicio = cveTipoServicio;
		this.cveRFC = cveRFC;
		this.numeroAplicacion = numeroAplicacion;
		this.numeroContrato = numeroContrato;
	}

	public String getFechaAtencion() {
		return fechaAtencion;
	}

	public void setFechaAtencion(String fechaAtencion) {
		this.fechaAtencion = fechaAtencion;
	}

	public String getCveIdee() {
		return cveIdee;
	}

	public void setCveIdee(String cveIdee) {
		this.cveIdee = cveIdee;
	}

	public String getNumeroFolioUnidad() {
		return numeroFolioUnidad;
	}

	public void setNumeroFolioUnidad(String numeroFolioUnidad) {
		this.numeroFolioUnidad = numeroFolioUnidad;
	}

	public String getStpDonacion() {
		return stpDonacion;
	}

	public void setStpDonacion(String stpDonacion) {
		this.stpDonacion = stpDonacion;
	}

	public String getCveMotivoRechazo() {
		return cveMotivoRechazo;
	}

	public void setCveMotivoRechazo(String cveMotivoRechazo) {
		this.cveMotivoRechazo = cveMotivoRechazo;
	}

	public String getComplementoRechazo() {
		return complementoRechazo;
	}

	public void setComplementoRechazo(String complementoRechazo) {
		this.complementoRechazo = complementoRechazo;
	}

	public String getCveMatricula() {
		return cveMatricula;
	}

	public void setCveMatricula(String cveMatricula) {
		this.cveMatricula = cveMatricula;
	}

	public String getApellidoPaterno() {
		return apellidoPaterno;
	}

	public void setApellidoPaterno(String apellidoPaterno) {
		this.apellidoPaterno = apellidoPaterno;
	}

	public String getApellidoMaterno() {
		return apellidoMaterno;
	}

	public void setApellidoMaterno(String apellidoMaterno) {
		this.apellidoMaterno = apellidoMaterno;
	}

	public String getNombre() {
		return nombre;
	}

	public void setNombre(String nombre) {
		this.nombre = nombre;
	}

	public String getCvePresupuestal() {
		return cvePresupuestal;
	}

	public void setCvePresupuestal(String cvePresupuestal) {
		this.cvePresupuestal = cvePresupuestal;
	}

	public String getCveTipoMensaje() {
		return cveTipoMensaje;
	}

	public void setCveTipoMensaje(String cveTipoMensaje) {
		this.cveTipoMensaje = cveTipoMensaje;
	}

	public String getCveTipoServicio() {
		return cveTipoServicio;
	}

	public void setCveTipoServicio(String cveTipoServicio) {
		this.cveTipoServicio = cveTipoServicio;
	}

	public String getCveRFC() {
		return cveRFC;
	}

	public void setCveRFC(String cveRFC) {
		this.cveRFC = cveRFC;
	}

	public String getNumeroAplicacion() {
		return numeroAplicacion;
	}

	public void setNumeroAplicacion(String numeroAplicacion) {
		this.numeroAplicacion = numeroAplicacion;
	}

	public String getNumeroContrato() {
		return numeroContrato;
	}

	public void setNumeroContrato(String numeroContrato) {
		this.numeroContrato = numeroContrato;
	}

	@Override
	public String toString() {
		return "EventoDonacion [fechaAtencion=" + fechaAtencion + ", cveIdee="
				+ cveIdee + ", numeroFolioUnidad=" + numeroFolioUnidad
				+ ", stpDonacion=" + stpDonacion + ", cveMotivoRechazo="
				+ cveMotivoRechazo + ", complementoRechazo="
				+ complementoRechazo + ", cveMatricula=" + cveMatricula
				+ ", apellidoPaterno=" + apellidoPaterno + ", apellidoMaterno="
				+ apellidoMaterno + ", nombre=" + nombre + ", cvePresupuestal="
				+ cvePresupuestal + ", cveTipoMensaje=" + cveTipoMensaje
				+ ", cveTipoServicio=" + cveTipoServicio + ", cveRFC=" + cveRFC
				+ ", numeroAplicacion=" + numeroAplicacion
				+ ", numeroContrato=" + numeroContrato + "]";
	}

	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result
				+ ((apellidoMaterno == null) ? 0 : apellidoMaterno.hashCode());
		result = prime * result
				+ ((apellidoPaterno == null) ? 0 : apellidoPaterno.hashCode());
		result = prime
				* result
				+ ((complementoRechazo == null) ? 0 : complementoRechazo
						.hashCode());
		result = prime * result + ((cveIdee == null) ? 0 : cveIdee.hashCode());
		result = prime * result
				+ ((cveMatricula == null) ? 0 : cveMatricula.hashCode());
		result = prime
				* result
				+ ((cveMotivoRechazo == null) ? 0 : cveMotivoRechazo.hashCode());
		result = prime * result
				+ ((cvePresupuestal == null) ? 0 : cvePresupuestal.hashCode());
		result = prime * result + ((cveRFC == null) ? 0 : cveRFC.hashCode());
		result = prime * result
				+ ((cveTipoMensaje == null) ? 0 : cveTipoMensaje.hashCode());
		result = prime * result
				+ ((cveTipoServicio == null) ? 0 : cveTipoServicio.hashCode());
		result = prime * result
				+ ((fechaAtencion == null) ? 0 : fechaAtencion.hashCode());
		result = prime * result + ((nombre == null) ? 0 : nombre.hashCode());
		result = prime
				* result
				+ ((numeroAplicacion == null) ? 0 : numeroAplicacion.hashCode());
		result = prime * result
				+ ((numeroContrato == null) ? 0 : numeroContrato.hashCode());
		result = prime
				* result
				+ ((numeroFolioUnidad == null) ? 0 : numeroFolioUnidad
						.hashCode());
		result = prime * result
				+ ((stpDonacion == null) ? 0 : stpDonacion.hashCode());
		return result;
	}

	@Override
	public boolean equals(Object obj) {
		if (this == obj) {
			return true;
		}
		if (obj == null) {
			return false;
		}
		if (!(obj instanceof EventoDonacion)) {
			return false;
		}
		EventoDonacion other = (EventoDonacion) obj;
		if (apellidoMaterno == null) {
			if (other.apellidoMaterno != null) {
				return false;
			}
		} else if (!apellidoMaterno.equals(other.apellidoMaterno)) {
			return false;
		}
		if (apellidoPaterno == null) {
			if (other.apellidoPaterno != null) {
				return false;
			}
		} else if (!apellidoPaterno.equals(other.apellidoPaterno)) {
			return false;
		}
		if (complementoRechazo == null) {
			if (other.complementoRechazo != null) {
				return false;
			}
		} else if (!complementoRechazo.equals(other.complementoRechazo)) {
			return false;
		}
		if (cveIdee == null) {
			if (other.cveIdee != null) {
				return false;
			}
		} else if (!cveIdee.equals(other.cveIdee)) {
			return false;
		}
		if (cveMatricula == null) {
			if (other.cveMatricula != null) {
				return false;
			}
		} else if (!cveMatricula.equals(other.cveMatricula)) {
			return false;
		}
		if (cveMotivoRechazo == null) {
			if (other.cveMotivoRechazo != null) {
				return false;
			}
		} else if (!cveMotivoRechazo.equals(other.cveMotivoRechazo)) {
			return false;
		}
		if (cvePresupuestal == null) {
			if (other.cvePresupuestal != null) {
				return false;
			}
		} else if (!cvePresupuestal.equals(other.cvePresupuestal)) {
			return false;
		}
		if (cveRFC == null) {
			if (other.cveRFC != null) {
				return false;
			}
		} else if (!cveRFC.equals(other.cveRFC)) {
			return false;
		}
		if (cveTipoMensaje == null) {
			if (other.cveTipoMensaje != null) {
				return false;
			}
		} else if (!cveTipoMensaje.equals(other.cveTipoMensaje)) {
			return false;
		}
		if (cveTipoServicio == null) {
			if (other.cveTipoServicio != null) {
				return false;
			}
		} else if (!cveTipoServicio.equals(other.cveTipoServicio)) {
			return false;
		}
		if (fechaAtencion == null) {
			if (other.fechaAtencion != null) {
				return false;
			}
		} else if (!fechaAtencion.equals(other.fechaAtencion)) {
			return false;
		}
		if (nombre == null) {
			if (other.nombre != null) {
				return false;
			}
		} else if (!nombre.equals(other.nombre)) {
			return false;
		}
		if (numeroAplicacion == null) {
			if (other.numeroAplicacion != null) {
				return false;
			}
		} else if (!numeroAplicacion.equals(other.numeroAplicacion)) {
			return false;
		}
		if (numeroContrato == null) {
			if (other.numeroContrato != null) {
				return false;
			}
		} else if (!numeroContrato.equals(other.numeroContrato)) {
			return false;
		}
		if (numeroFolioUnidad == null) {
			if (other.numeroFolioUnidad != null) {
				return false;
			}
		} else if (!numeroFolioUnidad.equals(other.numeroFolioUnidad)) {
			return false;
		}
		if (stpDonacion == null) {
			if (other.stpDonacion != null) {
				return false;
			}
		} else if (!stpDonacion.equals(other.stpDonacion)) {
			return false;
		}
		return true;
	}
}